package cap7;

import java.awt.*; 
import java.awt.event.*; 
import javax.swing.*; 
class DosBotones extends JFrame {

	public static void main(String [] args) {
		(new DosBotones()).setVisible(true);
	}

	//Componentes graficas
	private Container contenedor;
	private JButton botonGato, botonPerro;
	private JLabel imagen;
	private JPanel panelImagen,panelBotones;
	public DosBotones() {
		//Obtiene el panel de contenido y crea los objetos gráficos
		contenedor = getContentPane();               
		botonGato = new JButton("Gato");
		botonPerro = new JButton("Perro");
		imagen = new JLabel();  
		panelImagen = new JPanel();
		panelBotones = new JPanel();
		//Establece los atributos del frame
		setSize(400, 300);
		setDefaultCloseOperation(EXIT_ON_CLOSE);
		armaGUI();}
	private void armaGUI(){
		//Establece los atributos de los paneles 
		contenedor.setLayout (new GridLayout(2,1));  
		panelImagen.setLayout (new FlowLayout());
		panelImagen.setPreferredSize(new Dimension(380,200));
		panelBotones.setLayout (new FlowLayout()); 
		panelBotones.setPreferredSize(new Dimension(380,80));
		//Crea un oyente para cada boton y lo registra
		OyenteP oyenteP = new OyenteP();
		OyenteG oyenteG = new OyenteG(); 
		botonPerro.addActionListener(oyenteP);
		botonGato.addActionListener(oyenteG);        
		//Inserta la etiqueta y los botones en los paneles
		panelImagen.add(imagen);
		panelBotones.add(botonGato);
		panelBotones.add(botonPerro);
		//Inserta los paneles en el panel de contenido       
		contenedor.add(panelImagen);
		contenedor.add(panelBotones);
	}
	private class OyenteP implements ActionListener {
		public void actionPerformed(ActionEvent e) {
			imagen.setIcon(new ImageIcon("perro.png"));      }}
	private class OyenteG implements ActionListener {
		public void actionPerformed(ActionEvent e) {
			imagen.setIcon(new ImageIcon("gato.jpg"));      }}
}